/**
 * Copyright &copy; 2015-2020 <a href="http://www.jeeplus.org/">JeePlus</a> All rights reserved.
 */
package com.jeeplus.modules.ap.entity;

import java.util.Date;
import com.fasterxml.jackson.annotation.JsonFormat;
import java.util.List;
import com.google.common.collect.Lists;

import com.jeeplus.core.persistence.DataEntity;
import com.jeeplus.common.utils.excel.annotation.ExcelField;

/**
 * 付款申请Entity
 * @author 李超辉
 * @version 2018-12-13
 */
public class PaymentApplication extends DataEntity<PaymentApplication> {
	
	private static final long serialVersionUID = 1L;
	private String bm;		// 部门
	private Date date;		// 申请日期
	private String sqr;		// 申请人
	private String cgdh;		// 采购申请单据号
	private String type;		// 费用类型
	private String sfdj;		// 所附单据
	private Date fkrq;		// 付款日期
	private String yy;		// 原因用途
	private String xc;		// 项次
	private String je;		// 金额
	private String fygs;		// 费用归属
	private String bz;		// 备注
	private String fplx;		// 发票类型
	private String code;		// 单据号
	private String fkdw;		// 付款单位
	private String fkfs;		// 付款方式
	private String skr;		// 收款人全称
	private String khyh;		// 开户银行
	private String yhzh;		// 银行账户
	private String status;		// 单据状态
	private String pro;		// 项目
	private String min;
	private String max;
	private String fkzt;

	public String getFkzt() {
		return fkzt;
	}

	public void setFkzt(String fkzt) {
		this.fkzt = fkzt;
	}

	public String getMin() {
		return min;
	}

	public void setMin(String min) {
		this.min = min;
	}

	public String getMax() {
		return max;
	}

	public void setMax(String max) {
		this.max = max;
	}

	private List<PaymentDetil> paymentDetilList = Lists.newArrayList();		// 子表列表
	private List<PaymentApproval> approvalList=Lists.newArrayList();

	public List<PaymentApproval> getApprovalList() {
		return approvalList;
	}

	public void setApprovalList(List<PaymentApproval> approvalList) {
		this.approvalList = approvalList;
	}

	public PaymentApplication() {
		super();
	}

	public PaymentApplication(String id){
		super(id);
	}

	@ExcelField(title="部门", align=2, sort=7)
	public String getBm() {
		return bm;
	}

	public void setBm(String bm) {
		this.bm = bm;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd")
	@ExcelField(title="申请日期", align=2, sort=8)
	public Date getDate() {
		return date;
	}

	public void setDate(Date date) {
		this.date = date;
	}
	
	@ExcelField(title="申请人", align=2, sort=9)
	public String getSqr() {
		return sqr;
	}

	public void setSqr(String sqr) {
		this.sqr = sqr;
	}
	
	@ExcelField(title="采购申请单据号", align=2, sort=10)
	public String getCgdh() {
		return cgdh;
	}

	public void setCgdh(String cgdh) {
		this.cgdh = cgdh;
	}
	
	@ExcelField(title="费用类型", align=2, sort=11)
	public String getType() {
		return type;
	}

	public void setType(String type) {
		this.type = type;
	}
	
	@ExcelField(title="所附单据", align=2, sort=12)
	public String getSfdj() {
		return sfdj;
	}

	public void setSfdj(String sfdj) {
		this.sfdj = sfdj;
	}
	
	@JsonFormat(pattern = "yyyy-MM-dd HH:mm:ss")
	@ExcelField(title="付款日期", align=2, sort=13)
	public Date getFkrq() {
		return fkrq;
	}

	public void setFkrq(Date fkrq) {
		this.fkrq = fkrq;
	}
	
	@ExcelField(title="原因用途", align=2, sort=14)
	public String getYy() {
		return yy;
	}

	public void setYy(String yy) {
		this.yy = yy;
	}
	
	@ExcelField(title="项次", align=2, sort=15)
	public String getXc() {
		return xc;
	}

	public void setXc(String xc) {
		this.xc = xc;
	}
	
	@ExcelField(title="金额", align=2, sort=16)
	public String getJe() {
		return je;
	}

	public void setJe(String je) {
		this.je = je;
	}
	
	@ExcelField(title="费用归属", align=2, sort=17)
	public String getFygs() {
		return fygs;
	}

	public void setFygs(String fygs) {
		this.fygs = fygs;
	}
	
	@ExcelField(title="备注", align=2, sort=18)
	public String getBz() {
		return bz;
	}

	public void setBz(String bz) {
		this.bz = bz;
	}
	
	@ExcelField(title="发票类型", align=2, sort=19)
	public String getFplx() {
		return fplx;
	}

	public void setFplx(String fplx) {
		this.fplx = fplx;
	}
	
	@ExcelField(title="单据号", align=2, sort=20)
	public String getCode() {
		return code;
	}

	public void setCode(String code) {
		this.code = code;
	}
	
	@ExcelField(title="付款单位", align=2, sort=21)
	public String getFkdw() {
		return fkdw;
	}

	public void setFkdw(String fkdw) {
		this.fkdw = fkdw;
	}
	
	@ExcelField(title="付款方式", align=2, sort=22)
	public String getFkfs() {
		return fkfs;
	}

	public void setFkfs(String fkfs) {
		this.fkfs = fkfs;
	}
	
	@ExcelField(title="收款人全称", align=2, sort=23)
	public String getSkr() {
		return skr;
	}

	public void setSkr(String skr) {
		this.skr = skr;
	}
	
	@ExcelField(title="开户银行", align=2, sort=24)
	public String getKhyh() {
		return khyh;
	}

	public void setKhyh(String khyh) {
		this.khyh = khyh;
	}
	
	@ExcelField(title="银行账户", align=2, sort=25)
	public String getYhzh() {
		return yhzh;
	}

	public void setYhzh(String yhzh) {
		this.yhzh = yhzh;
	}
	
	@ExcelField(title="单据状态", align=2, sort=26)
	public String getStatus() {
		return status;
	}

	public void setStatus(String status) {
		this.status = status;
	}
	
	@ExcelField(title="项目", align=2, sort=27)
	public String getPro() {
		return pro;
	}

	public void setPro(String pro) {
		this.pro = pro;
	}
	
	public List<PaymentDetil> getPaymentDetilList() {
		return paymentDetilList;
	}

	public void setPaymentDetilList(List<PaymentDetil> paymentDetilList) {
		this.paymentDetilList = paymentDetilList;
	}
}